<?php

$data['authors'] = array();
$data['errors'] = array();

$query = mysqli_query($connection, 'SELECT * FROM authors ORDER BY author_name ASC');
$author = array();
while ($row = mysqli_fetch_assoc($query)) {
    $author['id'] = $row['author_id'];
    $author['name'] = $row['author_name'];
    $data['authors'][] = $author;
}

if (isset($_POST['book_title'])) {
    $book_title = trim($_POST['book_title']);
    if (mb_strlen($book_title) < 3 || mb_strlen($book_title) > 100) {
        $data['errors'][] = 'Името на книгата трябва да е дълго между 3 и 100 символа';
    } else {
        if (isset($_POST['authors'])) {
            $book_title_esc = mysqli_real_escape_string($connection, $book_title);
            $sql = 'INSERT INTO books (book_id, book_title)
                    VALUES (NULL, "' . $book_title_esc . '");';
            mysqli_query($connection, $sql);
            $book_id = mysqli_insert_id($connection);
            foreach ($_POST['authors'] as $author_id) {
                $sql = 'INSERT INTO books_authors (book_id, author_id)
                        VALUES ("' . $book_id . '", "' . (int) $author_id . '");';
                mysqli_query($connection, $sql);
            }
        } else {
            $data['errors'][] = 'Книгата трябва да има поне един автор';
        }
    }
}

$data['title'] = 'Нова книга';
render($data, 'templates/new-book_public.php');